The specification relates to a timing-oriented and architecture-centric system design using contracts.
The design of embedded systems, including automotive systems using conventional design approaches and programming methods may be difficult. In particular, these conventional design approaches and programming methods may be incapable of determining the correctness and performing verification of non-functional properties, such as timing-related properties, for the embedded system.
In the last decade, the size of the embedded system has dramatically increased. For example, an automotive embedded system may have more than 100 engine control units and millions of lines of code. Attempts have been made to reduce the system complexity and a time to market constraint, by using a model-based design approach and early-phase validation technologies. These attempts have been widely adopted and practiced in industry. However, system integration and its analysis, verification, and validation, even at the model level is still a big challenge due to the heterogeneity of the models and/or languages used in the design and different semantics adopted to create the embedded system.
Architecture design is also becoming a critical issue due to a large number of heterogeneous components in the system. An effective architecture design has a great impact on cost, timing, performance, safety, reliability, etc.
Timing, with regard to a specific architecture, is another significant issue considered in designing an embedded system, particularly in the integration phase. However, timing is hardly verified at the system-level.